<?php

function ptk_list(){
	my_set_code_js('
		function confirmDelete( i){
		var check = confirm(\'Akan mendelete data? \'); 
		if(check){
			location.href=\'index.php?com='.$_GET['com'].'&task=delete&id=\'+i;
		}
		return;	}
	');
	$header = array(
		'#'=>array('style'=>'text-align:center;border-bottom:2px solid;width:3%'),  
		'Unit Peminta'=>array('style'=>'text-align:left;border-bottom:2px solid;width:35%'),    
		'Nomor'=>array('style'=>'text-align:center;border-bottom:2px solid;width:10%'),    
		'Tanggal'=>array('style'=>'text-align:center;border-bottom:2px solid;width:10%'),
		'Jabatan'=>array('style'=>'text-align:left;border-bottom:2px solid;width:37%'),    
		' '=>array('style'=>'border-bottom:2px solid;width:10%'), 
	);

	$query = "SELECT * FROM ptk";
	$result = my_query($query);
	$i = 0;
	$row=array();
	while($ey = my_fetch_array($result)){
		$i++;
		$jabatan = my_get_data_by_id( 'jabatan' , 'jabatan_id' , $ey['jabatan_id']);
		$editproperty = array(
			'href'=>'index.php?com=ptk&task=edit&id='.$ey['ptk_id'],
			'title'=>'Edit'
		);
		$edit_button = button_icon( 'b_edit.png' , $editproperty  );

		$deleteproperty = array(
			'href'=>'javascript:; ',
			'onclick'=>'javascript:confirmDelete('.$ey['ptk_id'].');',
			'title'=>'Delete'
		);
		$delete_button = button_icon( 'b_drop.png' , $deleteproperty  );
		 
		$row[] = array(
			'#'=>position_text_align ($i, 'center'),  
			'lunit'=>  $jabatan['nama_organisasi'],     
			'l'=> position_text_align (  $ey['nomor'] , 'center')  ,    
			'u'=> position_text_align ( date("d-m-Y" , strtotime($ey['tanggal'] . " 00:00:00") ), 'center')  ,    
			'd'=>  $jabatan['nama_jabatan']  ,         
			'operasi'=> position_text_align( $edit_button.' '.$delete_button , 'right'),  
		);
	}
	
	$datas = table_rows($row);  
	$menuontop = array(  
		'Tambah data'=>array('onclick'=>'location.href=\'index.php?com=ptk&task=edit&id=0\';')
		//'Cetak' => array('onclick'=>'javascript:window.open(\'index.php?com=report&task=all_materi_pelatihan\',\'mywin\',\'left=20,top=20,width=800,height=600,toolbar=0,resizable=0\');')
	); 
	$printmenu = additional_menu_on_list( $menuontop ,'');
	return  $printmenu.table_builder($header , $datas ,  5 , false );
}

function get_nomor_baru(){
	$query = "SELECT MAX(nomor) AS mmax FROM ptk WHERE YEAR(tanggal) = YEAR(NOW())";
	$result = my_query($query);
	$row = my_fetch_array($result);
	$no=substr($row['mmax'],7,4)+1;
	return sprintf('%04d' , $no );
}

function form_ptk_create($id){

	my_set_file_js(
		array(
			'components/system/jquery/jquery.formatCurrency-1.4.0.js', 
			'components/system/jquery/combomulti/jquery.chainedSelects.js',
			'components/system/js/calendar/calendarDateInput.js', 
			'components/system/jquery/autocomplete/jquery.autocomplete.js'  			
		)
	);
	my_set_file_css(
		array(
				'components/system/jquery/autocomplete/jquery.autocomplete.css' 
			)
	);

	my_set_code_js('  
		function findValue(li) {
			if( li == null ) return alert("No match!"); 
			if( !!li.extra ) var sValue = li.extra[0]; 
			else var sValue = li.selectValue;
		}

	function selectItem(li) {
		findValue(li);
	}

	function formatItem(row) {
		return   row[0] ;
		}
 
	$(document).ready(function() {
		$("#nama_jabatan").autocomplete(
			"autocomplete_daftar_jabatan.php",
			{
				delay:10,
				minChars:2,
				matchSubset:1,
				matchContains:1,
				cacheLength:5,
				onItemSelect:selectItem,
				onFindValue:findValue,
				formatItem:formatItem,
				autoFill:true
			}
		);
	});

	function checkNameJabatan(name){
		$.get("check_jabatan_names.php", { nama: name  },
		function(data){
			if(data ==  \'0\' ){
				alert(\'Jabatan \'+ name+\' tidak ditemukan\nHarap diperiksa kembali\'); 
				$(\'#nama_jabatan\').val(\'\');
				return false;
			} 
		});
	}
	');
	
	my_set_code_js('  
		function findValue(li) {
			if( li == null ) return alert("No match!"); 
			if( !!li.extra ) var sValue = li.extra[0]; 
			else var sValue = li.selectValue;
		}

		function selectItem(li) {
			findValue(li);
		}

		function formatItem(row) {
			return   row[0] ;
		}

		function lookupAjax(){
			var oSuggest = $("#nama_karyawan")[0].autocompleter;
			oSuggest.findValue(); 
			return false;
		}
		$(document).ready(function() {
			$("#nama_karyawan").autocomplete(
				"autocomplete_daftar_karyawan.php",
				{
					delay:10,
					minChars:2,
					matchSubset:1,
					matchContains:1,
					cacheLength:5,
					onItemSelect:selectItem,
					onFindValue:findValue,
					formatItem:formatItem,
					autoFill:true
				}
			);
			 
		});

		function checkName(name){
			$.get("check_karyawan_names.php", { nama: name  },
			   function(data){
				 if(data ==  \'0\' ){
					alert(\'Nama karyawan \'+ name+\' tidak ditemukan\nHarap diperiksa kembali\');
					$(\'#nama_karyawan\').val(\'\');
					return false;
				 } 
			   });
		}
	');	
	
	$fields = my_get_data_by_id('ptk','ptk_id',$id);
	$view = form_header( "ptk" , "ptk"  ); 
	if($id>0){
		$no_ptk=$fields['nomor'];
	}else{
		$no_ptk= 'PTK'.date('Y').get_nomor_baru() ;
	}
 	$view .= form_field_display( $no_ptk , "Nomor PTK");
	$jabatan_id=($fields ) ?  (int) $fields['jabatan_id'] : 0 ;
	list($ymm,$fmm,$fdd) = explode("-",$fields['tanggal']);	
	$tanggal_exists = $fields['tanggal'] == '' ? date('d-m-Y') : $fdd.'-'.$fmm.'-'.$ymm;	
	$tanggal = array(
		'value' => isset($_POST['tanggal']) ? $_POST['tanggal'] : $tanggal_exists,
		'name' => 'tanggal', 
		'type'=>'text', 
	);
	$form_tanggal= form_calendar($tanggal); 
	$view .= form_field_display( $form_tanggal , 'Tgl. Dikeluarkan'  ) ;
	$jabatans = my_get_data_by_id('jabatan','jabatan_id',$jabatan_id );
	
	if($id>0){
		$nomor_posisi=$jabatans['nomor_posisi']."/".$jabatans['nama_jabatan'] ;
	}else{
		$nomor_posisi='/';
	}	
	$jabatan = array(
			'name'=>'nama_jabatan',
			'value'=>(isset($_POST['nama_jabatan'])? $_POST['nama_jabatan'] : $nomor_posisi  ),
			'id'=>'nama_jabatan',
			'type'=>'textfield',
			'size'=>'60',
			'onchange'=>'javascript:checkNameJabatan(this.value)'
		);
	$form_jabatan = form_dynamic($jabatan);
	$view .= form_field_display( $form_jabatan  , "No. Posisi/Jabatan"  );

	$kebutuhan = array(
		'name'=>'kebutuhan',
		'value'=>( isset($_POST['kebutuhan']) ? $_POST['kebutuhan'] : $fields['kebutuhan'] ),
		'id'=>'kebutuhan',
		'size'=>'3'
	);
	$form_field_kebutuhan = form_dynamic($kebutuhan); 	
	$view .= form_field_display( $form_field_kebutuhan.' orang'  , "Kebutuhan"  );
	
	list($ymm,$fmm,$fdd) = explode("-",$fields['mulai_berlaku']);	
	$tanggal_exists = $fields['mulai_berlaku'] == '' ? date('d-m-Y') : $fdd.'-'.$fmm.'-'.$ymm;	
	$tanggal = array(
		'value' => isset($_POST['mulai_berlaku']) ? $_POST['mulai_berlaku'] : $tanggal_exists,
		'name' => 'mulai_berlaku', 
		'type'=>'text', 
	);
	$form_tanggal= form_calendar($tanggal); 
	$view .= form_field_display( $form_tanggal , 'Mulai Berlaku'  ) ;	
	
	list($ymm,$fmm,$fdd) = explode("-",$fields['jadwal_kebutuhan']);	
	$tanggal_exists = $fields['jadwal_kebutuhan'] == '' ? date('d-m-Y') : $fdd.'-'.$fmm.'-'.$ymm;	
	$tanggal = array(
		'value' => isset($_POST['jadwal_kebutuhan']) ? $_POST['jadwal_kebutuhan'] : $tanggal_exists,
		'name' => 'jadwal_kebutuhan', 
		'type'=>'text', 
	);
	$form_tanggal= form_calendar($tanggal); 
	$view .= form_field_display( $form_tanggal , 'Jadwal Kebutuhan'  ) ;		

	$pengalaman_kerja = array(
		'name'=>'pengalaman_kerja',
		'value'=>( isset($_POST['pengalaman_kerja']) ? $_POST['pengalaman_kerja'] : $fields['pengalaman_kerja'] ),
		'id'=>'pengalaman_kerja',
		'size'=>'3'
	);
	$form_field_pengalaman_kerja = form_dynamic($pengalaman_kerja); 	
	$view .= form_field_display( $form_field_pengalaman_kerja.' tahun'  , "Pengalaman Kerja"  );	
	
	$peng_bahasa = array(
		'name'=>'peng_bahasa',
		'value'=>( isset($_POST['peng_bahasa']) ? $_POST['peng_bahasa'] : $fields['peng_bahasa'] ),
		'id'=>'peng_bahasa',
		'size'=>'40'
	);
	$form_field_peng_bahasa = form_dynamic($peng_bahasa); 	
	$view .= form_field_display( $form_field_peng_bahasa  , "Peng. Bahasa"  );	
	
	$bakat = array(
		'name'=>'bakat',
		'value'=>( isset($_POST['bakat']) ? $_POST['bakat'] : $fields['bakat'] ),
		'id'=>'bakat',
		'size'=>'40'
	);
	$form_field_bakat = form_dynamic($bakat); 	
	$view .= form_field_display( $form_field_bakat  , "Bakat/Minat"  );	

	$laki_laki = array(
		'name'=>'laki_laki',
		'value'=>( isset($_POST['laki_laki']) ? $_POST['laki_laki'] : $fields['laki_laki'] ),
		'id'=>'laki_laki',
		'size'=>'3'
	);
	$form_field = form_dynamic($laki_laki); 	
	$view .= form_field_display( $form_field.' orang'  , "Laki Laki"  );

	$wanita = array(
		'name'=>'wanita',
		'value'=>( isset($_POST['wanita']) ? $_POST['wanita'] : $fields['wanita'] ),
		'id'=>'wanita',
		'size'=>'3'
	);
	$form_field = form_dynamic($wanita); 	
	$view .= form_field_display( $form_field.' orang'  , "Wanita"  );

	$umur = array(
		'name'=>'umur',
		'value'=>( isset($_POST['umur']) ? $_POST['umur'] : $fields['umur'] ),
		'id'=>'umur',
		'size'=>'20'
	);
	$form_field = form_dynamic($umur); 	
	$view .= form_field_display( $form_field  , "Umur"  );
	
	$tinggi = array(
		'name'=>'tinggi',
		'value'=>( isset($_POST['tinggi']) ? $_POST['tinggi'] : $fields['tinggi'] ),
		'id'=>'tinggi',
		'size'=>'20'
	);
	$form_field = form_dynamic($tinggi); 	
	$view .= form_field_display( $form_field  , "Tinggi"  );

	$berat = array(
		'name'=>'berat',
		'value'=>( isset($_POST['berat']) ? $_POST['berat'] : $fields['berat'] ),
		'id'=>'berat',
		'size'=>'20'
	);
	$form_field = form_dynamic($berat); 	
	$view .= form_field_display( $form_field  , "Berat"  );

	$contoh_tipe_pegawai = array(
		'name'=>'contoh_tipe_pegawai',
		'value'=>( isset($_POST['contoh_tipe_pegawai']) ? $_POST['contoh_tipe_pegawai'] : $fields['contoh_tipe_pegawai'] ),
		'id'=>'contoh_tipe_pegawai',
		'cols'=>'45',
		'rows'=>'2'
	);
	$form_field = form_textarea($contoh_tipe_pegawai );
	$view .= form_field_display( $form_field , "Contoh Tipe Pegawai"   );

	$saran = array(
		'name'=>'saran',
		'value'=>( isset($_POST['saran']) ? $_POST['saran'] : $fields['saran'] ),
		'id'=>'saran',
		'cols'=>'45',
		'rows'=>'2'
	);
	$form_field = form_textarea($saran );
	$view .= form_field_display( $form_field , "Saran"   );
	
	list($ymm,$fmm,$fdd) = explode("-",$fields['dibuat_tanggal']);	
	$tanggal_exists = $fields['dibuat_tanggal'] == '' ? date('d-m-Y') : $fdd.'-'.$fmm.'-'.$ymm;	
	$tanggal = array(
		'value' => isset($_POST['dibuat_tanggal']) ? $_POST['dibuat_tanggal'] : $tanggal_exists,
		'name' => 'dibuat_tanggal', 
		'type'=>'text', 
	);
	$form_tanggal= form_calendar($tanggal); 
	$view .= form_field_display( $form_tanggal , 'Dibuat Tanggal'  ) ;

	$karyawan_data = loaddata_karyawan(( $fields ? $fields['dibuat_oleh'] : 0));

	$karyawan = array(
		'name'=>'nama_karyawan',
		'value'=>(isset($_POST['nama_karyawan'])? $_POST['nama_karyawan'] : $karyawan_data['nik'].'/'.$karyawan_data['nama']  ),
		'id'=>'nama_karyawan',
		'type'=>'textfield',
		'size'=>'60',
			'onchange'=>'javascript:checkName(this.value)'
	);
	$form_karyawan = form_dynamic($karyawan);
	$view .= form_field_display( $form_karyawan  , "Dibuat Oleh (NIK/Nama Karyawan)"  );	

	$submit = array(
		'value' => ( $id ==0 ? ' Simpan ' :'  Update  '),
		'name' => 'simpan', 
		'type'=>'submit','class'=>'main_button'
	);
	$form_submit= form_dynamic($submit); 
	
	$back = array(
		'value' => ' Kembali ',
		'name' => 'back', 
		'type'=>'button',
		'onclick'=>'location.href=\'index.php?com=ptk\'',
		'class'=>'main_button'
	);
	$form_back = form_dynamic($back); 
	
	$view .= form_field_display( $form_submit .' '. $form_back , "&nbsp;" ,  "" );
	$view .= form_footer( );
	
	return $view;

}

function submit_ptk_create($id =0){
	$karyawan_id = check_karyawan_by_nik_nama($_POST['nama_karyawan']);
	$jabatan_id = check_jabatan_by_no_org($_POST['nama_jabatan']	);

	list($dd,$mm,$yyyy) = explode( "-" , $_POST['tanggal']);
	list($dd1,$mm1,$yyyy1) = explode( "-" , $_POST['mulai_berlaku']);
	list($dd2,$mm2,$yyyy2) = explode( "-" , $_POST['jadwal_kebutuhan']);
	list($dd3,$mm3,$yyyy3) = explode( "-" , $_POST['dibuat_tanggal']);
	$datas = array(
		'nomor'				=>	my_type_data_str( 'PTK'.date('Y').get_nomor_baru() 	),
		'tanggal'  			=> 	my_type_data_str( $yyyy.'-'.$mm.'-'.$dd),		 	 	 	
		'jabatan_id'		=>  my_type_data_int($jabatan_id ),		
		'kebutuhan'			=> 	my_type_data_str( $_POST['kebutuhan'] ),			 
		'mulai_berlaku'		=> 	my_type_data_str( $yyyy1.'-'.$mm1.'-'.$dd1),		
		'jadwal_kebutuhan'	=> 	my_type_data_str( $yyyy2.'-'.$mm2.'-'.$dd2),		
	//	'pendidikan_id'		=> 	my_type_data_str( $_POST['catatan'] ),	
		'pengalaman_kerja'	=> 	my_type_data_str( $_POST['pengalaman_kerja'] ),	
		'peng_bahasa'		=> 	my_type_data_str( $_POST['peng_bahasa'] ),	
		'bakat'				=> 	my_type_data_str( $_POST['bakat'] ),	
		'laki_laki'			=> 	my_type_data_str( $_POST['laki_laki'] ),	
		'wanita'			=> 	my_type_data_str( $_POST['wanita'] ),	
		'umur'				=> 	my_type_data_str( $_POST['umur'] ),	
		'tinggi'			=> 	my_type_data_str( $_POST['tinggi'] ),	
		'berat'				=> 	my_type_data_str( $_POST['berat'] ),	
		'contoh_tipe_pegawai'=> my_type_data_str( $_POST['contoh_tipe_pegawai'] ),	
		'saran'				=> 	my_type_data_str( $_POST['saran'] ),	
		'dibuat_tanggal'	=> 	my_type_data_str( $yyyy3.'-'.$mm3.'-'.$dd3),		
		'dibuat_oleh'		=> 	my_type_data_int($karyawan_id),
	);
	
	if( $id > 0 ){
		return my_update_record( 'ptk' ,'ptk_id' ,$id , $datas );
	}
	return my_insert_record( 'ptk' , $datas );
}

function delete_ptk($ptk_id){
	return my_delete_record('ptk','ptk_id',$ptk_id);
}

function form_validate($id){
	$errsubmit = false;
	$err = array();

	$code =  trim($_POST["nama_jabatan"]); 
	if( $code == '' OR $code == '/'){
		$errsubmit = true;
		$err[] = "No. Org./Jabatan belum di isi";
	}else{
		$jabatan_id = check_jabatan_by_no_org($_POST['nama_jabatan']	);
		if($jabatan_id == 0){
			$errsubmit = true;
			$err[] = "Jabatan tidak di temukan";	
		}			
	}
	if(!is_numeric($_POST['kebutuhan']) ){
		$errsubmit = true;
		$err[] = "Kebutuhan harus angka" ;
	}
	if(!is_numeric($_POST['pengalaman_kerja']) ){
		$errsubmit = true;
		$err[] = "Pengalaman Kerja harus angka" ;
	}	
	if(!is_numeric($_POST['laki_laki']) ){
		$errsubmit = true;
		$err[] = "Laki_laki harus angka" ;
	}
	if(!is_numeric($_POST['wanita']) ){
		$errsubmit = true;
		$err[] = "Wanita harus angka" ;
	}
	if( trim($_POST['nama_karyawan']) == '/' or trim($_POST['nama_karyawan']) == ''){
		$errsubmit = true;
		$err[] = "Dibuat oleh belum di isi";
	}else{
		$karyawan_id= check_karyawan_by_nik_nama($_POST['nama_karyawan']);
		if($karyawan_id == 0){
			$errsubmit = true;
			$err[] = "Nama karyawan tidak di temukan";	
		}	
	}	
	if( $errsubmit){
		return $err;
	}
	return $errsubmit;
}